package cn.supermaster.management.schedule.mapper;

import cn.supermaster.management.schedule.domain.ScheduleTask;

import java.util.List;

/**
 * All rights Reserved, Designed By www.super-bytecode.com
 *
 * @ProjectName: supermaster-management
 * @Package: cn.supermaster.management.schedule.mapper
 * @ClassName: ScheduleTaskMapper
 * @Description: [调度任务信息 数据层]
 * <p> </p>
 * @Author: [Lance Ting]
 * @Date: 2021/1/28 13:37
 * @Version: V1.0
 * @Copyright: 2021 www.super-bytecode.com Inc. All rights reserved.
 * TODO: 注意,本文件Lance Ting所作,如果转载或使用请标明具体出处!
 **/
public interface ScheduleTaskMapper {
    /**
     * @Description: [查询调度任务日志集合]
     * <p></P>
     * @Title: selectScheduleTaskList
     * @Author: Lance Ting
     * @Date: 2021-01-28
     * @Param: task  调度信息
     * @Return: java.util.List<cn.supermaster.management.schedule.domain.ScheduleTask> 操作日志集合
     * @Throws:
     */
    List<ScheduleTask> selectScheduleTaskList(ScheduleTask task);

    /**
     * @Description: 查询所有调度任务[]
     * <p></P>
     * @Title: selectAllScheduleTasks
     * @Author: Lance Ting
     * @Date: 2021-01-28
     * @Return: java.util.List<cn.supermaster.management.schedule.domain.ScheduleTask> 调度任务列表
     */
    List<ScheduleTask> selectAllScheduleTasks();

    /**
     * @Description: [通过调度ID查询调度任务信息]
     * <p></P>
     * @Title: selectScheduleTaskByPrimaryKey
     * @Author: Lance Ting
     * @Date: 2021-01-28
     * @Param: taskId 调度ID
     * @Return: cn.supermaster.management.schedule.domain.ScheduleTask 调度任务信息
     */
    ScheduleTask selectScheduleTaskByPrimaryKey(Long taskId);

    /**
     * @Description: [通过调度ID删除调度任务信息]
     * <p></P>
     * @Title: deleteJobById
     * @Author: Lance Ting
     * @Date: 2021-01-28
     * @Param: taskId 调度ID
     * @Return: int
     */
    int deleteScheduleTaskById(Long taskId);

    /**
     * @Description: [批量删除调度任务信息]
     * <p></P>
     * @Title: deleteBatchScheduleTask
     * @Author: Lance Ting
     * @Date: 2021-01-28
     * @Param: ids 需要删除的数据ID
     * @Return: int
     */
    int deleteBatchScheduleTask(Long[] ids);

    /**
     * @Description: [修改调度任务信息]
     * <p></P>
     * @Title: updateScheduleTask
     * @Author: Lance Ting
     * @Date: 2021-01-28
     * @Param: task 调度任务信息
     * @Return: int
     * @Throws:
     */
    int updateScheduleTask(ScheduleTask task);

    /**
     * @Description: [新增调度任务信息]
     * <p></P>
     * @Title: insertScheduleTask
     * @Author: Lance Ting
     * @Date: 2021-01-28
     * @Param: task 调度任务信息
     * @Return: int
     */
    int insertScheduleTask(ScheduleTask task);
}
